Cronograma de Desarrollo: Módulo Aula Virtual

Metodología General por Fase/Paso:

  1. Mi Entrega (IA): Proporcionaré el código y las explicaciones necesarias para el paso actual.
  2. Tus Pruebas (Usuario): Realizarás las pruebas funcionales y de interfaz detalladas.
  3. Tu Retroalimentación (Usuario): Me informarás de cualquier error, ajuste necesario o duda.
  4. Mi Propuesta de Corrección (IA): (Si hay errores) Presentaré soluciones.
  5. Tu Autorización para Corregir (Usuario): (Si hay errores) Implementaré las correcciones.
  6. Tu Autorización para Avanzar (Usuario): Una vez satisfecho con el paso actual, me darás luz verde para continuar con el siguiente.

Nos comunicaremos al final de cada paso para asegurar la alineación antes de proceder.

Fase 0: Preparación y Entorno (Revisión Inicial)

Paso 0.1: Verificación de Base de Datos

Desarrollo a Realizar (IA):

Confirmar contigo el estado de las tablas de base de datos existentes y la creación de nuevas tablas requeridas.

Entregable Principal:

Confirmación mutua sobre la estructura de las tablas: alumnos, cursos_sence, temas_curso, subtemas_curso, documentos_subtema, mensajes_alumno_profesor, pizarra_curso, accesos_aula_virtual, subtemas_alumno, y la nueva chat_aula_mensajes.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Base de datos lista y confirmada.

Fase 1: Estructura Base del Aula y Navegación de Contenidos (Vista Alumno)

Paso 1.1: Layout Principal y Acceso al Aula (aula_virtual_curso.php)

Desarrollo a Realizar (IA):

Creación del archivo aula_virtual_curso.php con el layout general (encabezado, pie de página, estructura de dos columnas para sidebar y contenido) y lógica básica de acceso/autenticación (verificar id_curso y simular/verificar permiso de alumno).

Entregable Principal:

Archivo aula_virtual_curso.php funcional con la maqueta estructural y acceso básico.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Layout base funcional y aprobado. Lógica de acceso inicial funcionando.

Paso 1.2: Visualización Dinámica de Temas y Subtemas en Sidebar

Desarrollo a Realizar (IA):

En aula_virtual_curso.php, implementar la lógica PHP para obtener y mostrar dinámicamente los temas (de temas_curso) y sus subtemas (de subtemas_curso) en el panel lateral, usando un acordeón de Bootstrap. Los enlaces de subtemas apuntarán a aula_virtual_curso.php?id_curso=X&id_subtema=Y.

Entregable Principal:

Sidebar del aula mostrando la jerarquía de temas y subtemas del curso actual, obtenidos de la base de datos.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Navegación del temario funcional y correcta.

Paso 1.3: Visualización de Contenido Básico de Subtemas

Desarrollo a Realizar (IA):

En aula_virtual_curso.php, implementar la lógica para que al hacer clic en un subtema (o recibir id_subtema por GET), se cargue en el área de contenido principal: subtemas_curso.titulo, descripcion, contenido. Mostrar también enlaces/info de link_zoom (con fecha/hora) y url_video (Vimeo/YouTube, como enlace inicialmente). Listar documentos de documentos_subtema (nombre y enlace de descarga).

Entregable Principal:

Funcionalidad para ver los detalles básicos (texto, enlaces video/zoom, documentos) de un subtema seleccionado.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Visualización de contenido de subtemas aprobada.

Fase 2: Funcionalidades Básicas de Interacción (Vista Alumno y Backend Inicial)

Paso 2.1: Pizarra de Anuncios (Visualización para Alumno)

Desarrollo a Realizar (IA):

En aula_virtual_curso.php, al seleccionar "Pizarra de Anuncios" en el sidebar, mostrar los anuncios de pizarra_curso (para el id_curso actual) en el área de contenido. Incluir título, fecha, contenido y adjuntos. Ordenar por destacado y fecha.

Entregable Principal:

Sección de Pizarra de Anuncios funcional en la vista del alumno.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Pizarra de anuncios funcional y aprobada.

Paso 2.2: Mensajería por Subtema con Profesor (Envío de Preguntas por Alumno)

Desarrollo a Realizar (IA):

En la vista de detalle de cada subtema en aula_virtual_curso.php, implementar el formulario para que el alumno envíe preguntas. Lógica PHP para procesar el formulario e insertar la pregunta en mensajes_alumno_profesor (asociada al alumno, subtema y profesor).

Entregable Principal:

Formulario de envío de preguntas al profesor funcional en cada subtema.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Sistema de envío de preguntas al profesor funcional.

Fase 3: Seguimiento de Progreso del Alumno (Videos - con AJAX/JSON)

Paso 3.1: Backend para Progreso de Video (actualizar_progreso_video.php)

Desarrollo a Realizar (IA):

Creación del script PHP actualizar_progreso_video.php que recibirá datos vía AJAX (POST: alumno_id, curso_id, subtema_id, tiempo_actual_segundos), validará y actualizará subtemas_alumno.tiempo_visualizacion y subtemas_alumno.modo. Devolverá respuesta JSON.

Entregable Principal:

Archivo actualizar_progreso_video.php funcional.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Backend para seguimiento de progreso validado.

Paso 3.2: Frontend para Progreso de Video (JavaScript y AJAX)

Desarrollo a Realizar (IA):

En aula_virtual_curso.php (vista de subtema), implementar el JavaScript necesario. Requeriré que me indiques el tipo de reproductor de video que usarás (HTML5 estándar, Vimeo, YouTube) para adaptar el código JS. El script escuchará eventos del video y llamará al backend (Paso 3.1) vía AJAX en intervalos y/o en eventos clave.

Entregable Principal:

Código JavaScript integrado en la vista del subtema.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

Interacción JS-Backend para guardar progreso de video funcional.

Paso 3.3: Visualización del Progreso de Video en UI

Desarrollo a Realizar (IA):

En aula_virtual_curso.php, mostrar el progreso del video (porcentaje y/o barra de progreso Bootstrap) en la vista del subtema y en el sidebar de navegación. Esta información se obtendrá de subtemas_alumno. Opcional: actualizar dinámicamente la UI con la respuesta AJAX del Paso 3.2.

Entregable Principal:

Indicadores visuales de progreso en la interfaz.

Pruebas Clave a Realizar (por ti):

Criterio para Avanzar:

UI de progreso aprobada.

Fase 4: Sistema de Calificación de Subtemas (Estrellas - con AJAX/JSON)

Esta fase se detallará completamente cuando se apruebe la Fase 3. Incluirá:

Fase 5: Funcionalidades Adicionales de Comunidad (Básicas, sin AJAX para tiempo real)

Esta fase se detallará completamente cuando se apruebe la Fase 4. Incluirá:

Fase 6: Consideraciones para Interfaces de Administración/Profesor

El desarrollo de las interfaces para que los administradores y profesores gestionen los contenidos del Aula Virtual (subir documentos, crear anuncios para la pizarra, responder consultas de alumnos, ver el progreso general de sus alumnos, etc.) se considera un módulo o conjunto de funcionalidades separado. Se abordará una vez que la vista del alumno del Aula Virtual esté avanzada y según tus prioridades. Estas interfaces se integrarían probablemente en el panel de administración existente (admin.php) o en nuevas páginas dedicadas.

Nota Final: Este cronograma es una propuesta y puede ajustarse según las necesidades y la retroalimentación que surja durante el desarrollo. La comunicación constante será clave para el éxito del proyecto.